package com.yunxi.sat.pojo;

import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.yunxi.core.web.DateJsonDeserializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 客户跟进
 * </p>
 *
 * @author caoYong
 * @since 2019-07-10
 */
@Data
@ApiModel(value="客户跟进 对象", description="客户跟进")
public class SatCustomerFollowVO implements Serializable {

    @ApiModelProperty(value = "主键ID")
    private String followId;

    @ApiModelProperty(value = "客户ID")
    private String customerNo;

    @ApiModelProperty(value = "销售顾问姓名")
    private String customerId;

    @ApiModelProperty(value = "渠道编号")
    private String partnerCode;

    @ApiModelProperty(value = "跟进事项(Customer_FollowItem,1首次来店,2试乘试驾,3定金订单,4开票,5交车,6电话跟进,7上门拜访,8战败)")
    private String followItem;

    @ApiModelProperty(value = "跟进方式(Customer_FollowStyle,1电话,2展厅,3短信,4市场活动)")
    private String followStyle;

    @ApiModelProperty(value = "跟进前客户级别(Customer_IntentionLevel,1O,2H,3A,4B,5C,6其他,7战败)")
    private String level;

    @ApiModelProperty(value = "战败原因(Customer_LoseReason,1失控,2失联,3其他)")
    private String lostReason;

    @ApiModelProperty(value = "跟进结果")
    private String followReasult;

    @ApiModelProperty(value = "计划跟进事项(Customer_FollowItem,1首次来店,2试乘试驾,3定金订单,4开票,5交车,6电话跟进,7上门拜访,8战败)")
    private String planFollowItem;

    @ApiModelProperty(value = "客户创建时间")
    private String customerCreateTime;

    @ApiModelProperty(value = "计划跟进方式(Customer_FollowStyle,1电话,2展厅,3短信,4市场活动)")
    private String planFollowStyle;

    @ApiModelProperty(value = "计划跟进时间")
    @JsonDeserialize(using = DateJsonDeserializer.class)
    private Date planFollowTime;

    @ApiModelProperty(value = "完成跟进时间")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date completeFollowTime;

    @ApiModelProperty(value = "跟进状态(Customer_FollowStatus,0未完成,1已完成)")
    private Integer followStatus;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "创建人")
    private String createBy;

    @ApiModelProperty(value = "修改时间")
    private Date updateTime;

    @ApiModelProperty(value = "修改人")
    private String updateBy;

    @ApiModelProperty(value = "状态1启用0禁用")
    private Integer status;

    @ApiModelProperty(value = "是否删除")
    private Integer isDel;

    @ApiModelProperty(value = "备注")
    private String memo;

    @ApiModelProperty(value = "跟进描述")
    private String followDesc;

    @ApiModelProperty(value = "跟进次数")
    private String followCount;

    @ApiModelProperty(value = "是否试驾")
    private String isDriver;

    @ApiModelProperty(value = "未试驾原因")
    private String noDriverCause;

    @ApiModelProperty(value = "跟进,回访及ITMC跟踪状态")
    private String followState;

    @ApiModelProperty(value = "实际到店事项及发生动作")
    private String factTouchItem;

    @ApiModelProperty(value = "实际接触时间")
    private String factTouchTime;

    @ApiModelProperty(value = "迁移数据实际接触时间")
    private String awayTime;

    @ApiModelProperty(value = "预计来店动作")
    private String forecastrItem;

    @ApiModelProperty(value = "跟进后客户级别(Customer_IntentionLevel,1O,2H,3A,4B,5C,6其他,7战败)")
    private String newCustlevel;

    @ApiModelProperty(value = "是否老客户跟进(1是,0否)")
    private Integer isOldCustomerFollow;

    @ApiModelProperty(value = "计划跟进时间字符串")
    private String planFollowTimeStr;

    @ApiModelProperty(value = "上次跟进时间")
    private Date lastFollowTime;

    @ApiModelProperty(value = "逾期天数")
    private Integer lateFollowDays;

    @ApiModelProperty(value = "交车时间")
    private Date handleVehicleTime;

    @ApiModelProperty(value = "客户姓名")
    private String name;

    @ApiModelProperty(value = "客户电话")
    private String phone;

    @ApiModelProperty(value = "线索类型 (Customer_ClueType,0普通线索,1潜客线索,2试驾线索,3订单线索)")
    private Integer clueType;

    @ApiModelProperty(value = "车系名称")
    private String seriesName;

    @ApiModelProperty(value = "车型名称")
    private String catalogName;

    @ApiModelProperty(value = "销售顾问姓名")
    private String realName;

    @ApiModelProperty(value = "性别(Sex_Type,1男,2女)")
    private String sex;

    @ApiModelProperty(value = "产品名称")
    private String productName;

    @ApiModelProperty(value = "(Customer_IntentionLevel,1O,2H,3A,4B,5C,6其他,7战败)")
    private String customerLevel;

    @ApiModelProperty(value = "客户状态(意向,订单,战败,基盘)")
    private Integer custStatus;

    @ApiModelProperty(value = "计划跟进时间")
    private String datam;

}
